home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / ip / nfs / amd / amd-5.2 / config / os-u2_2.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-06-23  |  3.7 KB  |  147 lines

  1. /* $Id: os-u2_2.h,v 5.2 90/06/23 22:20:55 jsp Rel $ */
  2.  
  3. /*
  4.  * Ultrix 2.2 definitions for Amd (automounter)
  5.  *
  6.  * Copyright (c) 1990 Jan-Simon Pendry
  7.  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
  8.  * Copyright (c) 1990 The Regents of the University of California.
  9.  * All rights reserved.
  10.  *
  11.  * This code is derived from software contributed to Berkeley by
  12.  * Jan-Simon Pendry at Imperial College, London.
  13.  *
  14.  * Redistribution and use in source and binary forms are permitted provided
  15.  * that: (1) source distributions retain this entire copyright notice and
  16.  * comment, and (2) distributions including binaries display the following
  17.  * acknowledgement:  ``This product includes software developed by the
  18.  * University of California, Berkeley and its contributors'' in the
  19.  * documentation or other materials provided with the distribution and in
  20.  * all advertising materials mentioning features or use of this software.
  21.  * Neither the name of the University nor the names of its contributors may
  22.  * be used to endorse or promote products derived from this software without
  23.  * specific prior written permission.
  24.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
  25.  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  26.  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  27.  *
  28.  *    %W% (Berkeley) %G%
  29.  */
  30.  
  31. /*
  32.  * Does the compiler grok void *
  33.  */
  34. #undef    VOIDP
  35.  
  36. /*
  37.  * Which version of the Sun RPC library we are using
  38.  * This is the implementation release number, not
  39.  * the protocol revision number.
  40.  */
  41. #define    RPC_3
  42.  
  43. /*
  44.  * Which version of the NFS interface are we using.
  45.  * This is the implementation release number, not
  46.  * the protocol revision number.
  47.  */
  48. #define    NFS_3
  49.  
  50. /*
  51.  * Byte ordering
  52.  */
  53. #undef    ARCH_ENDIAN
  54. #if defined(vax)
  55. #define    ARCH_ENDIAN "little"
  56. #endif
  57.  
  58. /*
  59.  * The mount table is obtained from the kernel
  60.  */
  61. #undef    UPDATE_MTAB
  62.  
  63. /*
  64.  * No mntent info on Ultrix
  65.   */
  66. #undef    MNTENT_HDR
  67.  
  68. /*
  69.  * No support for syslog()
  70.  */
  71. #undef    HAS_SYSLOG
  72.  
  73. /*
  74.  * No support for ndbm
  75.  */
  76. #undef    HAS_NDBM_MAPS
  77.  
  78. /*
  79.  * Name of filesystem types
  80.  */
  81. #define    MOUNT_TYPE_NFS    GT_NFS
  82. #define    MOUNT_TYPE_UFS    GT_ULTRIX
  83. #undef    MTAB_TYPE_UFS
  84. #define    MTAB_TYPE_UFS    "ufs"
  85.  
  86. /*
  87.  * Name of mount & unmount system calls
  88.  */
  89. #undef    MOUNT_TRAP
  90. #define    MOUNT_TRAP(type, mnt, flag, mnt_data) \
  91.     mount(mnt->mnt_fsname, mnt->mnt_dir, flag, type, mnt_data)
  92. #undef    UNMOUNT_TRAP
  93. #define    UNMOUNT_TRAP(mnt)    umount(mnt->mnt_passno)
  94.  
  95. /*
  96.  * Miscellaneous Ultrix bits
  97.  */
  98. #define    M_RDONLY    M_RONLY
  99.  
  100. #ifndef MNTMAXSTR
  101. #define    MNTMAXSTR       128
  102. #endif
  103.  
  104. #define    MNTTYPE_UFS    "ufs"        /* Un*x file system */
  105. #define    MNTTYPE_NFS    "nfs"        /* network file system */
  106. #define    MNTTYPE_IGNORE    "ignore"    /* No type specified, ignore this entry */
  107.  
  108. #define    MNTOPT_RO    "ro"        /* read only */
  109. #define    MNTOPT_RW    "rw"        /* read/write */
  110. #define    MNTOPT_QUOTA    "quota"        /* quotas */
  111. #define    MNTOPT_NOQUOTA    "noquota"    /* no quotas */
  112. #define    MNTOPT_HARD    "hard"        /* hard mount */
  113. #define    MNTOPT_SOFT    "soft"        /* soft mount */
  114. #define    MNTOPT_INTR    "intr"        /* interrupts allowed */
  115.  
  116. #define    MNTOPT_NOSUID    "nosuid"    /* no set uid allowed */
  117.  
  118. struct mntent {
  119.     char    *mnt_fsname;    /* name of mounted file system */
  120.     char    *mnt_dir;    /* file system path prefix */
  121.     char    *mnt_type;    /* MNTTYPE_* */
  122.     char    *mnt_opts;    /* MNTOPT* */
  123.     int    mnt_freq;    /* dump frequency, in days */
  124.     int    mnt_passno;    /* pass number on parallel fsck */
  125. };
  126. #define    MOUNTED        "/etc/mtab"
  127.  
  128. #define    NFS_HDR    "misc-ultrix.h"
  129. #define    UFS_HDR    "misc-ultrix.h"
  130.  
  131. #define    MISC_RPC
  132.  
  133. #define    nfs_args    nfs_gfs_mount
  134. #define    ULTRIX_HACK    /* Should be handled better than this !! */
  135. #define    NEED_MNTOPT_PARSER
  136.  
  137. /*
  138.  * How to get a mount list
  139.  */
  140. #undef    READ_MTAB_FROM_FILE
  141. #define    READ_MTAB_ULTRIX_STYLE
  142.  
  143. /*
  144.  * Need precise length links
  145.  */
  146. #define    PRECISE_SYMLINKS
  147.